JSON Schema
#Javascript
#自動生成
#バリデーション
#仕様
#データ構造
JSONでJSONのデータ構造の定義を記述する仕様。
JSON Schemeは非常に強力で、HTTP POSTでユーザーから送られてくるデータに異常がないかバリデーションすることもできるし、逆にJSON SchemeでHTTP APIの仕様を書いたら動くHTTP APIサーバーを自動生成するようなツール(OpenAPI)まで登場している。
http://www.jsonschema2pojo.org/
JSON SchemeからJavaのpojoソースコードを自動生成するツール
こういうJSONを使いたいとする
code:json
{
"firstName": "yui",
"lastName": "seki",
"age": "10"
}
でも、こういうJSONはエラーとして禁止したいとする
code:json
{
"firstName": "yuiseki",
"lastName": null,
"age": "-10"
}
その場合のJSONSchemeは以下のようになる
code:json
{
"title": "Person",
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
},
"age": {
"description": "Age in years",
"type": "integer",
"minimum": 0
}
},
"required": "firstName", "lastName"
}
ドキュメント
http://json-schema.org/
https://gyazo.com/18b30f268fec85fa9cc95edf6c209dca